Manufacturers of mobile devices, such as cellular phones, may obtain components of the mobile devices from various sources, including different manufacturers. For example, an application processor in a mobile computing device may be obtained from a first manufacturer, while sensors employed by the mobile computing device may be obtained from one or more other manufacturers. Various standards-based or proprietary interfaces have been defined for interconnecting integrated circuit (IC) devices in mobile devices and other apparatus, and these interfaces are typically directed to a specific application or type of application. For example, cellular telephones may use a communications interface that is compatible with or conforms to a Camera Serial Interface standard specified by the Mobile Industry Processor Interface Alliance (MIPI).
Conventional interfaces optimized for a specific application may not be suitable for use in other applications. For example, the MIPI standards define a camera control interface (CCI) that uses a two-wire, bi-directional, half duplex, serial interface configured as a bus connecting a master and one or more slaves. CCI is optimized to handle the data communications requirements associated with displays, which requirements are typically beyond the capabilities of the Inter-Integrated Circuit (I2C) bus, which is in widespread use for a variety of different types of device. CCI signaling and protocols may be compatible with devices that employ the I2C bus to communicate using CCI protocols. That is, the CCI protocol uses the Serial Clock (SCL) and Serial Data (SDA) lines of the I2C bus, and CCI devices and I2C devices can be deployed on the same I2C bus such that two or more CCI devices may communicate using CCI protocols, while any communication involving an I2C device uses I2C protocols.
Later versions of CCI can provide higher throughputs using modified protocols to support faster signaling rates. In one example a CCI extension (CCIe) bus may be used to provide higher data rates for devices that are compatible with CCIe bus operations. Such devices may be referred to as CCIe devices, and the CCIe devices can attain higher data rates when communicating with each other by encoding data as symbols transmitted on both the SCL line and the SDA line of a conventional CCI bus. CCIe devices and I2C devices may coexist on the same CCIe bus, such that a plurality of devices may exchange data using CCIe encoding, while data exchanges involving legacy I2C devices may be transmitted according to I2C signaling conventions.
There exists an ongoing need for providing optimized communications on serial interfaces configured as a bus connecting different types of peripherals or cooperating devices to a processor.